<?php
/**
 * GioCMS
 * 
 * LICENSE
 *
 * This source file is subject to the GNU GENERAL PUBLIC LICENSE Version 2 
 * that is bundled with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * http://www.gnu.org/licenses/gpl-2.0.txt
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to license@ninhgio.com so we can send you a copy immediately.
 * 
 * @copyright	Copyright (c) 2010-2011 GioCMS (http://cms.ninhgio.com)
 * @license		http://www.gnu.org/licenses/gpl-2.0.txt GNU GENERAL PUBLIC LICENSE Version 2
 * @author		NinhGio - ninhgio@gmail.com
 * @since		1.0
 */

class Gio_Core_Import_Importer
{
	private static $_instance = null;
	
	/**
	 * @return Gio_Core_Import_Importer
	 */
	public static function getInstance()
	{
		if (null == self::$_instance) {
			self::$_instance = new self();
		}
		return self::$_instance;
	}
	
	public function import($file)
	{
		$conn = Gio_Db_Connection::getConnection();
		
		$prefix  = $conn->_tablePrefix;
		$queries = Gio_Core_Import_MysqlParser::parse($file, $prefix);
		if ($queries) {
			foreach ($queries as $query) {
				$conn->query($query);
				/**
			 	 * FIXME: Use PDO instead of normal MySQL connection
			 	 * <code>
			 	 * 	try {
			 	 * 		$conn->beginTransaction();
			 	 * 		$conn->query($query);
			 	 * 		$conn->commit();
			 	 * 	} cactch (Exception $ex) {
			 	 * 		$conn->rollBack()	
			 	 * 	}
			 	 * </code>
			     */
			}
		}
		$conn->close();
	}
}